//
//  TestData.m
//  HYSmileiOS
//
//  Created by SMC-MAC on 16/5/20.
//  Copyright © 2016年 heyou. All rights reserved.
//

#import "TestData.h"
#import <UIKit/UIKit.h>

@implementation TestData

/**
 *  获取所有可能性的描述信息
 *
 *  @return 描述信息
 */
+ (NSArray<NSString*>*)getAllCaseDesc {
    NSMutableArray *mary = [NSMutableArray array];
    
    // 描述内容为空
//    [mary addObject:@""];
    // 描述只有一行
    [mary addObject:@"只有一行的描述"];
    // 需要换行
//    [mary addObject:@"内容描述要换行内容描述要换行内容描述要换行内容描述要换行"];
    // 最多字数
//    NSString *maxDesc = @"一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述";
//    [mary addObject:maxDesc];
    
    return mary;
}

/**
 *  获取所有可能性的图片大小
 *
 *  @return 图片大小
 */
+ (NSArray<NSValue*>*)getAllCaseImageSize {
    NSMutableArray *mary = [NSMutableArray array];
    
    // 大图
    // 高宽比：1 ： 1.4, 大于1.3的效果应该都是相同的
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(600, 900)]];    // ERROR
    // 高宽比：1 ： 1.3，显示出错，因为 浮点数比较问题，1.3 > 1.2999999523162842 : 这是因为比较浮点数的用法不对
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(600, 780)]];    // ERROR
    // 高宽比：1 ： 1.2
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(600, 720)]];    // OK
    // 高宽比： 1 ： 1
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(600, 600)]];    // OK
    // 高宽比： 1 ： 0.5
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(600, 50)]];     // ERROR
    
    // 小图，宽小于 290 的图，最大值不超过：377 = 290 * 1.3，最小值不得小于40
    // 高度超过 377
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(280, 392)]];     // ERROR
    // 宽高合适
    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(600, 600)]];     // OK
    // 高宽小于 377 大于 40
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(200, 260)]];     // OK
    // 宽高接近40
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(100, 41)]];     // ERROR
    // 高度等于 40
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(100, 40)]];     // ERROR
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(40, 40)]];     // ERROR
//    [mary addObject:[NSValue valueWithCGSize:CGSizeMake(30, 300)]];     // ERROR
    
    return mary;
}

+ (ArticleModel*)getArticle:(NSString*)desc size:(CGSize)sz {
    ArticleModel *model = [ArticleModel new];
    
    model.wbid = 123;
    model.desc = desc;
    model.type = HYImageType_PNG;
    model.date = [NSDate date];
    model.author = [UserInfoDetail new];
    model.likenum = 1;
    model.hatenum = 2;
    model.commentnum = 3;
    model.marknum = 4;
    
    // 缩略图
    model.thumbnailWidth = 600;
    model.thumbnailHeight = 600;
    model.thumbnailUrl = @"http://service.wonbile.com/images/thumb.png";
    // 大图
    model.imageWidth = 600;
    model.imageHeight = 2793;
    model.imageUrl = @"http://service.wonbile.com/images/full.JPG";
    
//    model.thumbnailWidth = 824;
//    model.thumbnailHeight = 736;
//    model.thumbnailUrl = @"http://service.wonbile.com/images/preim.png";
//    model.imageUrl = @"http://service.wonbile.com/images/full.JPG";
    
    return model;
}

+ (ArticleModel*)getNormalImage1 {
    ArticleModel *model = [ArticleModel new];
    
    model.wbid = 123;
    model.desc = @"没有大图的图片";
    model.type = HYImageType_PNG;
    model.date = [NSDate date];
    model.author = [UserInfoDetail new];
    model.likenum = 1;
    model.hatenum = 2;
    model.commentnum = 3;
    model.marknum = 4;
    
    // 缩略图
    model.thumbnailWidth = 824;
    model.thumbnailHeight = 736;
    model.thumbnailUrl = @"http://service.wonbile.com/images/preim.png";
    // 大图
    model.imageWidth = 0;
    model.imageHeight = 0;
    model.imageUrl = @"";
    
    //    model.thumbnailWidth = 824;
    //    model.thumbnailHeight = 736;
    //    model.thumbnailUrl = @"http://service.wonbile.com/images/preim.png";
    //    model.imageUrl = @"http://service.wonbile.com/images/full.JPG";
    
    return model;
}

+ (ArticleModel*)getLongImage1 {
    ArticleModel *model = [ArticleModel new];
    
    model.wbid = 123;
    model.desc = @"有大图的图片";
    model.type = HYImageType_PNG;
    model.date = [NSDate date];
    model.author = [UserInfoDetail new];
    model.likenum = 1;
    model.hatenum = 2;
    model.commentnum = 3;
    model.marknum = 4;
    
    // 缩略图
    model.thumbnailWidth = 600;
    model.thumbnailHeight = 600;
    model.thumbnailUrl = @"http://service.wonbile.com/images/thumb.png";
    // 大图
    model.imageWidth = 600;
    model.imageHeight = 2793;
    model.imageUrl = @"http://service.wonbile.com/images/full.JPG";
    
    return model;
}

+ (ArticleModel*)getGIF1 {
    ArticleModel *model = [ArticleModel new];
    
    model.wbid = 400;
    model.desc = @"动态图GIF";
    model.type = HYImageType_GIF;
    model.date = [NSDate date];
    model.author = [UserInfoDetail new];
    model.likenum = 1;
    model.hatenum = 2;
    model.commentnum = 3;
    model.marknum = 4;
    
    // 缩略图
    model.thumbnailWidth = 281;
    model.thumbnailHeight = 242;
    model.thumbnailUrl = @"http://service.wonbile.com/images/0061.png";
    // 大图
    model.imageWidth = 281;
    model.imageHeight = 242;
    model.imageUrl = @"http://service.wonbile.com/images/006.gif";
    
    return model;
}

/**
 *  获取测试数据列表
 *
 *  @return 测试数据
 */
+ (NSArray<ArticleModel*>*)getArticleList {
    NSMutableArray* mary = [NSMutableArray array];
    
    [mary addObject:[self getGIF1]];
    [mary addObject:[self getNormalImage1]];
    [mary addObject:[self getLongImage1]];
    
    // 创建测试数据
//    NSArray<NSString*> *descList = [self getAllCaseDesc];
//    NSArray<NSValue*> *sizeList = [self getAllCaseImageSize];
//    
//    for (NSString *desc in descList) {
//        for (NSValue *size in sizeList) {
//            CGSize tSize = [size CGSizeValue];
//            ArticleModel *md = [self getArticle:desc size:tSize];
//            [mary addObject:md];
//        }
//    }
    
//    ArticleModel *m1 = [ArticleModel new];
//    m1.wbid = 123;
//    m1.desc = @"一张简单的测试图片";f
//    m1.imageWidth = 0;
//    m1.imageHeight = 0;
//    m1.imageUrl = @"";
//    m1.thumbnailWidth = 824;
//    m1.thumbnailHeight = 736;
//    m1.thumbnailUrl = @"http://service.wonbile.com/images/preim.png";
//    m1.type = HYImageType_PNG;
//    m1.date = [NSDate date];
//    m1.author = [UserInfoDetail new];
//    m1.likenum = 1;
//    m1.hatenum = 2;
//    m1.commentnum = 3;
//    m1.marknum = 4;
//    [mary addObject:m1];
    
#if 0
    ArticleModel *m2 = [ArticleModel new];
    m2.wbid = 124;
//    m2.desc = @"";
//    m2.desc = @"只有一行的描述";
//    m2.desc = @"内容描述要换行内容描述要换行内容描述要换行内容描述要换行";
//    m2.desc = @"一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述";
    m2.imageWidth = 0;
    m2.imageHeight = 0;
    m2.imageUrl = @"";
    m2.thumbnailWidth = 200;
    m2.thumbnailHeight = 200;
    m2.thumbnailUrl = @"http://service.wonbile.com/images/preim.png";
    m2.type = HYImageType_PNG;
    m2.date = [NSDate date];
    m2.author = [UserInfoDetail new];
    m2.likenum = 1;
    m2.hatenum = 2;
    m2.commentnum = 3;
    m2.marknum = 4;
    [mary addObject:m2];
#endif
    
    return mary;
}

#pragma mark -- comment list
+ (CommentModel*)getComment1 {
    CommentModel *cm = [CommentModel new];
    cm.content = @"abcd";
    return cm;
}

+ (CommentModel*)getComment2 {
    CommentModel *cm = [CommentModel new];
    cm.content = @"内容描述要换行内容描述要换行内容描述要换行内容描述要换行";
    return cm;
}

+ (CommentModel*)getComment3 {
    CommentModel *cm = [CommentModel new];
    cm.content = @"一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字数的描述一个最大多字";
    return cm;
}

/**
 *  获取测试评论列表
 *
 *  @return 评论数据
 */
+ (NSArray<CommentModel*>*)getCommentList {
    NSMutableArray* mary = [NSMutableArray array];
    
    [mary addObject:[self getComment1]];
    [mary addObject:[self getComment2]];
    [mary addObject:[self getComment3]];
    
    return mary;
}

@end
